论文阅读

[边缘检测论文]Object Contour and Edge Detection with RefineContourNet

一、背景(2019年发表)

  • 物体轮廓检测目的是提取图像中物体形状的信息,可靠的检测器可以从背景中区分目标的轮廓和边缘。

  • 基于CNN的方法有HED(发现使用预训练图像分类模型可以有效提取想要的图像边界信息并抑制不期待的边缘)/CEDN(使用全卷积编码解码器生成轮廓图)/COB(类似HED网络结构,使用面向多尺度轮廓以及分层的图像分割算法),共同点就是使用比较深的网络,利用从ImageNet中与训练得到的高层分类信息,比如VGG。但是都没使用最新的分类网络,如ResNet.

  • 边缘检测中应用的方法有Canny算子、Sobel算子、Phase Stretch TransformgPb(采用轮廓检测和分层图像分割相结合)、DeepNet和 $N^4$ -Fields(使用CNN网络达到比较高层次的检测)、DeepEdgeDeepContourCEDRCFHFL。这几个网络都是基于像VGG或使用类似HED跨层的结构。

  • 作者认为上述工作在架构、骨干网络、训练过程和数据集方面,利用预先训练的分类能力方面有未开发的潜力。提出新的网络架构,采用基于resnet的多路径细化CNN进行目标轮廓检测。

二、 RefineContourNet

1、Concept

  • 在RefineNet基础上改进,为了将分类能力与像素级检测阶段连接起来,逐步细化,即深度特征与下一个较浅级别的特征融合,直到达到最浅级别,应该比使用简单特征连接架构的跳跃层更有效。
  • 训练过程中必须完成的两点:一,有效地使用预先训练的特征来形成特定的抽象能力,以识别从数据中学习到的目标轮廓,二,将其与像素级检测阶段连接起来。

2、Image Segmentation Network for Contour Detection

  • 边缘检测和图像分割网络最大的不同在于目标函数,边缘检测是一个二分类问题,本文使用逻辑回归作为 loss function:
    • $\begin{aligned} \mathrm{L}\left(h_{\Theta}(x), y\right)=&-y \cdot \beta \log \left(h_{\Theta}(x)\right) \\ &-(1-y) \cdot \log \left(1-h_{\Theta}(x)\right), \end{aligned}$
    • $h_{\Theta}(x) \in[0,1], y \in\{0,1\}$ and $\beta=10$
    • $h_{\Theta}(x)$ 是对具有相应二进制标签y的像素x的预测。 $\Theta$ 表示学习到的参数,$\beta$ 是一个加权因子,由于轮廓和非轮廓像素之间存在较大的不平衡,因此用于增强轮廓检测。改变损耗函数会根据二进制损耗函数改变RefineNet的最后一层。

3、Network Architecture

网络结构

  • 块之间的连接表示分辨率大小和通道数
  • 在最后的细化步骤中,使用原始图像作为额外路径的输入,增加了3个RCUs,提高了结果。

细化路径块

  • RCU具有残差卷积层,增加参数量,可以调节和修改MRF的输入。

  • MRF首先通过卷积操作对输入进行自适应,以调整高阶特征空间对应的通道维数与低阶特征空间对应的通道维数。然后,对分辨率较小的特征图进行采样,使其与分辨率较大的特征图具有相同的张量维数,然后相加。

  • CRP的目标是从特征图中收集比普通最大池化层更多的上下文。将多个池块连接起来,每个池块由一个较大步长的max池和一个卷积操作组成。

三、评价

1、训练

  • 从训练集中选择1000张随机图像,通过随机裁剪、垂直翻转和0.7 - 1.3之间的缩放来增强数据。
    训练

2、 Object Contour Detection Evaluation

  • 使用工具:Piotr’s Computer Vision Matlab Toolbox,包括NMS对物体轮廓细化。

  • 评价指标: 精度和召回率(PR)曲线,最佳数据集比例尺(ODS)、最佳图像比例尺(OIS)和平均精度(AP)

PR曲线

可视化

3、Edge Detection Evaluation

  • 对于目标轮廓检测任务,RCN仍然存在较厚边缘预测的缺点。然而,NMS对于RCN的边缘预测图更精确,因为每像素的位深度从8位增加到16位。
    不同方法可视化对比

四、结论

  • 该策略比以往的方法更有效地利用了物体轮廓和边缘检测的高抽象性,在物体轮廓检测和边缘检测方面取得了非常好的结果。
  • RefineNet为边缘检测提供了一个非常有用的自底向上多路径细化体系结构。通过非常规的训练方法,比如使用修改过的COCO数据集进行预训练,或者简单地使用所有单独的标签对BSDS500进行精细训练,能够改进各自的任务。

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!